23 research outputs found

    Calibrated Peer Reviews in Requirements Engineering Instruction: Application and Experiences

    Get PDF
    Instructing Requirements Engineering (RE) is a challenging task due to the absence of single absolute and correct solutions computer science students so often strive for. Instead, there is often a variety of compromise solutions for each RE problem. Therefore, it is essential that aspiring Software Engineers are exposed to as many solution alternatives as possible to experience the implications of RE decisions. To facilitate this, we propose a learning-by-multiple-examples process, in which we make use of a calibrated peer review grading model for assignments. Paired with a think-pair-share model of semester-long, industry-realistic, project-based low-stakes milestones, we were able to generate a rich collaborative learning atmosphere. In this paper, we report the course design and experiences from the application of calibrated peer reviews in an undergraduate RE course. Qualitative and quantitative application results show that calibrated peer reviews significantly improve students’ learning outcomes

    On the Syntactic, Semantic, and Pragmatic Quality of Students’ Conceptual Models

    Get PDF
    Visual notations and conceptual models, such as ER diagrams or UML diagrams aid in aligning stakeholder needs, defining and prioritizing processes and goals for the system under development, serve as a reference for requirements elicitation, negotiation, and enable validation as well as verification of artifacts. With such a ubiquitous presence and paramount importance, conceptual models have therefore been introduced in software engineering curricula far and wide. However, it is exceedingly difficult to teach and learn conceptual modeling. Not only does it require educators to instruct notation and syntax of the visual language, but also semantic intricacies. Similarly, students struggle with what differentiates a “good” conceptual model from an inadequate one, how to use conceptual models of different types in conjunction with one another in a meaningful way, or simply how to avoid ambiguity and vagueness. In this paper, we discuss the syntactic, semantic, and pragmatic quality of conceptual models in four courses from an undergraduate software engineering program. It is not our aim to present empirically rigorous results, but to contribute to the body of knowledge on the quality of typical novices’ conceptual models. We seek to foster discussion in the community and present observations and results for comparison

    Industry Projects in Requirements Engineering Education: Application in a University Course in the US and Comparison with Germany

    Get PDF
    Project-based learning has proven useful in software engineering education to increase student engagement and learning performance. In this paper, we contribute our experiences from applying industry projects in an undergraduate requirements engineering course in the United States. We furthermore discuss our experiences from courses conducted in Germany and the US course in light of difference in the educational systems. Results show that our course design is well received in both countries in terms of learning outcomes, student motivation, teamwork, attention to detail, and performance in the exam

    Hazard Relation Diagramme - Definition und Evaluation

    Get PDF
    Der Entwicklungsprozess sicherheitskritischer, software-intensiver eingebetteter Systeme wird im Besonderen durch die Notwendigkeit charakterisiert, zu einem frühestmöglichem Zeitpunkt im Rahmen des Safety Assessments sogenannte Hazards aufzudecken, welche im Betrieb zu Schaden in Form von Tod oder Verletzung von Menschen sowie zu Beschädigung oder Zerstörung externer Systeme führen können. Um die Sicherheit des Systems im Betrieb zu fördern, werden für jeden Hazard sogenannte Mitigationen entwickelt, welche durch hazard-mitigierende Anforderungen im Rahmen des Requirements Engineering dokumentiert werden. Hazard-mitigierende Anforderungen müssen in dem Sinne adäquat sein, dass sie zum einen die von Stakeholdern gewünschte Systemfunktionalität spezifizieren und zum anderen die Wahrscheinlichkeit von Schaden durch Hazards im Betrieb minimieren. Die Adäquatheit von hazard-mitigierenden Anforderungen wird im Entwicklungsprozess im Rahmen der Anforderungsvalidierung bestimmt. Die Validierung von hazard-mitigierenden Anforderungen wird allerdings dadurch erschwert, dass Hazards sowie Kontextinformationen über Hazards ein Arbeitsprodukt des Safety Assessments darstellen und die hazard-mitigierenden Anforderungen ein Arbeitsprodukt des Requirements Engineering sind. Diese beiden Arbeitsprodukte sind in der Regel nicht schlecht integriert, sodass den Stakeholdern bei der Validierung nicht alle Informationen zur Verfügung stehen, die zur Bestimmung der Adäquatheit der hazard-mitigierenden Anforderungen notwendig sind. In Folge könnte es dazu kommen, dass Inadäquatheit in hazard-mitigierenden Anforderungen nicht aufgedeckt wird und das System fälschlicherweise als ausreichend sicher betrachtet wird. Im Rahmen dieses Dissertationsvorhabens wurde ein Ansatz entwickelt, welcher Hazards, Kontextinformationen zu Hazards, hazard-mitigierende Anforderungen sowie die spezifischen Abhängigkeiten in einem graphischen Modell visualisiert und somit für die Validierung zugänglich macht. Zudem wird ein automatisierter Ansatz zur Generierung der graphischen Modelle vorgestellt und prototypisch implementiert. Darüber hinaus wird anhand von vier detaillierten empirischen Experimenten der Nutzen der graphischen Modelle für die Validierung hazard-mitigierender Anforderungen nachgewiesen. Die vorliegende Arbeit leistet somit einen Beitrag zur Integration der Arbeitsergebnisse des Safety Assessments und des Requirements Engineerings mit dem Ziel die Validierung der Adäquatheit hazard-mitigierender Anforderungen zu unterstützen.The development process of safety-critical, software-intensive embedded systems is characterized by the need to identify hazards during safety assessment in early stages of development. During operation, such hazards may lead to harm to come to humans and external systems in the form of death, injury, damage, or destruction, respectively. In order to improve the safety of the system during operation, mitigations are conceived for each hazard, and documented during requirements engineering by means of hazard-mitigating requirements. These hazard-mitigating requirements must be adequate in the sense that they must specify the functionality required by the stakeholders and must render the system sufficiently safe during operation with regard to the identified hazards. The adequacy of hazard-mitigating requirements is determined during requirements validation. Yet, the validation of the adequacy of hazard-mitigating requirements is burdened by the fact that hazards and contextual information about hazards are a work product of safety assessment and hazard-mitigating requirements are a work product of requirements engineering. These work products are poorly integrated such that the information needed to determine the adequacy of hazard-mitigating requirements are not available to stakeholders during validation. In consequence, there is the risk that inadequate hazard-mitigating requirements remain covert and the system is falsely considered sufficiently safe. In this dissertation, an approach was developed, which visualizes hazards, contextual information about hazards, hazard-mitigating requirements, as well as their specific dependencies in graphical models. The approach hence renders these information accessible to stakeholders during validation. In addition, an approach to create these graphical models was developed and prototypically implemented. Moreover, the benefits of using these graphical models during validation of hazard-mitigating requirements was investigated and established by means of four detailed empirical experiments. The dissertation at hand hence provides a contribution towards the integration of the work products of safety assessment and requirements engineering with the purpose to support the validation of the adequacy of hazard-mitigating requirements

    Three Major Instructional Approaches for Requirements Engineering

    Get PDF
    In this talk, we report on our findings from the paper A Survey of Instructional Approaches in the Requirements Engineering Education Literature [DGT21], which has been accepted at and published in the proceedings of the 2021 IEEE International Conference on Requirements Engineering. The paper reports the findings of a systematic literature review to define and investigate the current state of research on requirements engineering education

    Using Cybersecurity Body of Knowledge (CyBOK) Case Studies to Enhance Student Learning

    Get PDF
    One of the central aspects of specialization in modern software engineering is security engineering. With contemporary systems being networked and entrusted with mission-critical functionality, cybersecurity is an essential quality that must be developed into the system from the first moment. This comprises issues such as privacy, authentication, robustness against vulnerabilities, and hardness against external attacks. To do so, software engineering specialists with appreciation for the detailed intricacies of security engineering as well as broad experience are required. The Cybersecurity Body of Knowledge (CyBOK, [1]) has been developed to serve, among other uses, as an instructional reference for educators to prepare the next generation of security engineers in this respect. While the CyBOK describes the intricacies of security engineering in plentiful detail, it remains up to the instructor to convey this curriculum in a way that fosters understanding and forms experience as well as competencies in the learner. To aid the instructors who use the CyBOK, we have devised a library of 18 case studies that are specifically designed to target CyBOK knowledge areas. The case studies are sufficiently detailed to allow adoption with minimal overhead on the instructor. In this paper, we describe the case study mapping to the CyBOK, and classroom results of one exemplary case study, demonstrating improved understanding by students

    A Systematic Literature Review of Requirements Engineering Education

    Get PDF
    Requirements engineering (RE) has established itself as a core software engineering discipline. It is well acknowledged that good RE leads to higher quality software and considerably reduces the risk of failure or budget-overspending of software development projects. It is of vital importance to train future software engineers in RE and educate future requirements engineers to adequately manage requirements in various projects. To this date, there exists no central concept of what RE education shall comprise. To lay a foundation, we report on a systematic literature review of the feld and provide a systematic map describing the current state of RE education. Doing so allows us to describe how the educational landscape has changed over the last decade. Results show that only a few established author collaborations exist and that RE education research is predominantly published in venues other than the top RE research venues (i.e., in venues other than the RE conference and journal). Key trends in RE instruction of the past decade include involvement of real or realistic stakeholders, teaching predominantly elicitation as an RE activity, and increasing student factors such as motivation or communication skills. Finally, we discuss open opportunities in RE education, such as training for security requirements and supply chain risk management, as well as developing a pedagogical foundation grounded in evidence of effective instructional approaches
    corecore